// 请求本身也封装成一个对象，将请求发送者和接收者解耦，能够组合命令，也能够撤销和重做命令